package orchestration.businessprocess.execution;

import orchestration.businessprocess.model.nodes.BPEndEvent;
import orchestration.businessprocess.model.nodes.BPIntEvent;
import orchestration.businessprocess.model.nodes.BPStartEvent;
import orchestration.businessprocess.model.nodes.BPTask;
/**
 * an interface for objects that want to be notified when the execution visits
 * some particular nodes
 * @author <a href="mailto:car.ferrarini@gmail.com">Carlo Ferrarini</a>
 *
 */
public interface IBPExecutionListener {

	public void onStartEvent(BPStartEvent startEvent,BPExecution execution);
	public void onTask(BPTask task,BPExecution execution);
	public void onIntEvent(BPIntEvent intEvent,BPExecution execution);
	public void onEndEvent(BPEndEvent endEvent,BPExecution execution);
}
